package com.tbit.uqbike.service.business;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.tbit.uqbike.object.pojo.OperaPsw;
import com.tbit.uqbike.object.pojo.dto.OperaPswDTO;
import com.tbit.uqbike.object.value.LoginInfo;


/**
 * 操作密钥服务
 */
public interface OperaPswService {

    /**
     * 操作密钥分页查询
     *
     * @param brandId 区域id
     */
    Page<OperaPsw> queryPage(Integer brandId, Integer pageNo, Integer pageSize);

    /**
     * 根据id查询操作密钥
     *
     * @param operaPswId 密钥id
     */
    OperaPsw getByOperaPswId(Integer operaPswId);

    /**
     * 根据id修改操作密钥
     *
     * @param operaPswDTO .
     */
    void updateByOperaPswId(OperaPswDTO operaPswDTO);

    /**
     * 根据品牌id和功能模块校验密钥
     *
     * @param loginUser 用户登录信息
     * @param module    功能模块
     * @param operaPsw  密钥
     */
    void checkOperaPsw(LoginInfo loginUser, Integer module, String operaPsw);

    /**
     * 根据功能模块获取密钥
     *
     * @param brandId 区域id
     * @param module  功能模块
     */
    OperaPsw getOperaPswByModule(Integer brandId, Integer module);

}
